import Vue from 'vue'
import Vuex from 'vuex'
import axios from 'axios'
axios.defaults.baseURL = 'http://127.0.0.1:7000/api/v1'
import router from '.././router/index.js'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    username:''||'admin',
    rank:''||null,
    paimin:''||null
  },
  mutations: {
    setUsername(state,data){
      state.username=data
    },
    setRank(state,data){
      state.rank=data
    },
    setpaimin(state,data){
      state.paimin=data
    },
    loadUsername (state) {
      // 从浏览器中取出用户名
      let username = sessionStorage.getItem('username')
      // 判断是否有
      if (username !== null) {
        state.username = username
      }
    },
    logout (state) {
      state.username = ''
      // 清空浏览器中数据
      sessionStorage.clear()
      router.push('/')
    },
  },
  actions: {
     login (context, data) {
      axios.post('/login', data).then(res => {
        if (res.data.ok === 1) {
          console.log(data)
          // 保存令牌到浏览器中
          sessionStorage.setItem('token', res.data.data.token)
          // 把用户名保存到浏览器中
          sessionStorage.setItem('username', data.username)
          // 在 Vuex 中保存用户名：调用 mutations 中的 setUsername 方法保存 username 数据
          context.commit('setUsername', data.username)
          // 跳转到首页
          router.push('/home')
        } else {
          alert('登录失败！：原因：' + res.data.error)
        }
      })
    },
  },
  modules: {

  }
})
